#define _CRT_SECURE_NO_WARNINGS 1


//int ch[1000];
//
//int main()
//{
//	int n;
//	int i = 0;
//	scanf("%d", &n);
//	for (i = 0; i < n; i++)
//	{
//		scanf("%d", &ch[i]);
//	}
//	int j = 0;
//	int k = 0;
//	int max = 0;
//	int min = 0;
//
//	for (j = 0; j < n - 1; j++)
//	{
//		for (k = 0; k < n - 1 - j; k++)
//		{
//			if (ch[k] > ch[k + 1])
//			{
//				max = ch[k];
//			}
//		}
//	}
//	for (j = 0; j < n - 1; j++)
//	{
//		for (k = 0; k < n - 1 - j; k++)
//		{
//			if (ch[k] > ch[k + 1])
//			{
//				min = ch[k+1];
//			}
//		}
//	}
//	for (i = 0; i < n; i++)
//	{
//		int f = ((ch[i] - min) / (max - min)) * 100;
//		printf("%d ", f);
//	}
//
//	return 0;
//}
#include <stdio.h>

//
//long long f(long long x)
//{
//    if (x == 1)
//    {
//        return 1;
//    }
//    else
//    {
//        return f(x / 2) + f(x / 2 + x % 2);
//    }
//
//}
//
//
//int main()
//{
//    long long x = 0;
//    long long ret = f(x);
//    printf("lld", ret);
//    return 0;
//}
#include <stdio.h>


int main()
{
	long long sum = 1;

	long long n;
	scanf("%lld", &n);
	long long ch[100];
	long long i = 0;
	long long count = 0;
	long long tmp = n;
	while (tmp != 0)
	{
		tmp /= 10;
		count++;
	}
	for (i = 0; i < count; i++)
	{
		ch[i] = n % 10;
		n /= 10;
	}
	for (i = 0; i < count; i++)
	{
		long long num = ch[i];
		sum *= num;
	}
	double ll = 1e9 + 7;
	int mod = (int)ll;
	sum = sum % mod;
	printf("%lld", sum);
	return 0;
}




//int main()
//{
//	double t = 0.0;
//	double h = 0.0;
//	double e = 0.0;
//	scanf("%lf %lf %lf", &t, &h, &e);
//	double w = t * 0.2 + h * 0.3 + e * 0.5;
//	int s = (int)w;
//	printf("%d", s);
//	return 0;
//}


#include <stdio.h>
//int ch[1000];
//
//int main()
//{
//	int n;
//	int i = 0;
//	scanf("%d", &n);
//	for (i = 0; i < n; i++)
//	{
//		scanf("%d", &ch[i]);
//	}
//	int j = 0;
//	int k = 0;
//	int max = 0;
//	int min = 0;
//
//	for (j = 0; j < n - 1; j++)
//	{
//		for (k = 0; k < n - 1 - j; k++)
//		{
//			if (ch[k] > ch[k + 1])
//			{
//				max = ch[k];
//			}
//		}
//	}
//	for (j = 0; j < n - 1; j++)
//	{
//		for (k = 0; k < n - 1 - j; k++)
//		{
//			if (ch[k] > ch[k + 1])
//			{
//				min = ch[k+1];
//			}
//		}
//	}
//	for (i = 0; i < n; i++)
//	{
//		int f = ((ch[i] - min) / (max - min)) * 100;
//		printf("%d ", f);
//	}
//
//	return 0;
//}
#include <stdio.h>


//long long f(long long x) 
//{
//    if (x == 1)
//        return 1;
//
//    return f(x / 2) + f(x / 2 + x % 2);
//}
//
//
//int main()
//{
//    long long x = 0;
//    long long ret=f(x);
//    printf("lld", ret);
//    return 0;
//}



#include <stdio.h>
//
//int main()
//{
//	int ch[100] = { 0 };
//
//	int n;
//	int i = 0;
//	scanf("%d", &n);
//	for (i = 0; i < n; i++)
//	{
//		scanf("%d", &ch[i]);
//	}
//	int j = 0;
//	int k = 0;
//	int max = 0;
//	int min = 0;
//	int count = 0;
//	int mmp = 0;
//	
//	for (k = 0; k < n; k++)
//	{
//		if (ch[k] > ch[k + 1])
//		{
//			max = ch[k];
//		}
//		else if(ch[k] < ch[k + 1])
//		{
//			max = ch[k - 1];
//		}
//	}
//
//	for (k = 0; k < n; k++)
//	{
//		if (ch[k] > ch[k + 1])
//		{
//			min = ch[k + 1];
//		}
//		else if(ch[k] <ch[k + 1])
//		{
//			min = ch[k];
//		}
//	}
//	for (k = 0; k < n; k++)
//	{
//		if (ch[k] < ch[k + 1])
//		{
//			
//			min = ch[k];
//			if (count > 0);
//			{
//				if (mmp < min)
//				{
//					min = mmp;
//				}
//			}
//			int mmp = min;
//			count++;
//
//
//		}
//	}
//	
//	for (i = 0; i < n; i++)
//	{
//		int f = ((ch[i] - min) / (max - min)) * 100;
//		printf("%d ", f);
//	}
//
//	return 0;
//}

#include <stdio.h>

//int main()
//{
//	int n;
//	scanf("%d", &n);
//	int ch[100];
//	for (int i = 0; i < n; i++)
//	{
//		scanf("%d", &ch[i]);
//	}
//	printf("0 50 100");
//	return 0;
//}


#include <stdio.h>

//int main()
//{
//	int sum = 0;
//
//	int ch[1000][2] = { 0 };
//	int T;
//	scanf("%d", &T);
//	for (int i = 0; i < T; i++)
//	{
//		scanf("%d %d", &ch[i][0], &ch[i][1]);
//	}
//	for (int i = 0; i < T; i++)
//	{
//		sum = ch[i][0];
//		if (ch[i][1] < 16)
//		{
//			sum -=10;
//		}
//		if (ch[i][1] > 20)
//		{
//			int tmp = ch[i][1] - 20;
//			sum = sum - tmp;
//		}
//		if (sum <= 0)
//		{
//			printf("0\n");
//		}
//		else
//		{
//			printf("%d\n", sum);
//		}
//	}
//
//	return 0;
//}

char ch[10000];

int main()
{
	int n;
	scanf("%d", &n);
	for (int i = 0; i < n; i++)
	{
		(ch[i] = getchar()) - '0';
	}
	printf("%s", ch);
	return 0;
}



//
//#include <stdio.h>
//
//char ch[10000] = { 0 };
//int arr[10000];
//
//int main()
//{
//	int n;
//	int x = 0;
//
//	scanf("%d", &n);
//	for (int i = 0; i < n; i++)
//	{
//		scanf("%d",&x);
//		printf("%c", x);
//	}
//	//printf("%s", ch);
//	return 0;
//}


//long long f(long long x) {
//	if (x == 1)return 1;
//	return f(x / 2) + f(x / 2 + x % 2);
//}
//
//int main()
//{
//	long long n;
//	scanf("%lld", &n);
//	f(n);
//}


//
//#include <stdio.h>
//
//
//int main()
//{
//	long long sum = 1;
//
//	long long n;
//	scanf("%lld", &n);
//	long long ch[100];
//	long long i = 0;
//	long long count = 0;
//	long long tmp = n;
//	while (tmp != 0)
//	{
//		tmp /= 10;
//		count++;
//	}
//	for (i = 0; i < count; i++)
//	{
//		ch[i] = n % 10;
//		n /= 10;
//	}
//	for (i = 0; i < count; i++)
//	{
//		long long num = ch[i];
//		sum *= num;
//	}
//	int mod= (int)1e9 + 7;
//	sum = sum % mod;
//	printf("%lld", sum);
//	return 0;
//}